/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package vista.personas.profesionales;


import modelo.personas.profesionales.GestorEspecialidad;
import modelo.personas.profesionales.Especialidad;
import vista.GestorVistaEditor;


/**
 *
 * @author Raul
 */
public class GestorVistaEspecialidadIntFrm extends GestorVistaEditor {

    private EditorEspecialidadIntFrm formulario;
    private GestorEspecialidad gestorModelo = new GestorEspecialidad();

    public GestorVistaEspecialidadIntFrm() {
        gestorModelo.crearModelo();
        setModo(CREACION);
    }

    public GestorVistaEspecialidadIntFrm(Especialidad modelo) {
        gestorModelo.setModelo(modelo);
        setModo(MODIFICACION);
    }
    
    @Override
    public EditorEspecialidadIntFrm getFormulario() {
        return formulario;
    }

    public void setFormulario(EditorEspecialidadIntFrm formulario) {
        this.formulario = formulario;
    }

    @Override
    public GestorEspecialidad getGestorModelo() {
        return gestorModelo;
    }

    public void setGestorModelo(GestorEspecialidad gestorModelo) {
        this.gestorModelo = gestorModelo;
    }
    
    
    @Override
    public void abrirFormulario() {
        setFormulario(new EditorEspecialidadIntFrm(this));
        inicializarVista();
        formulario.setVisible(true);
    }

    @Override
    public void inicializarVista() {
        if(!super.isCreacion()) setearVistaConModelo();
    }
    
    /** Da a los atributos del objeto a crear/actualizar los valores 
     * ingresados por el usuario
     */
    @Override
    public void setearModeloConVista(){
        Especialidad model = getGestorModelo().getModelo();
        model.setNombre(formulario.getNombreTxt().getText());
        model.setDescripcion(formulario.getDescripcionArea().getText());
    }

    @Override
    public void setearVistaConModelo() {
        getFormulario().getNombreTxt().setText(gestorModelo.getModelo().getNombre());
        getFormulario().getDescripcionArea().setText(gestorModelo.getModelo().getDescripcion());
    }

    @Override
    public String getNombreObjeto() {
        return "La Especialidad";
    }

    @Override
    public void cerrarFormulario() {
        getFormulario().dispose();
    }


}
